package com.tianjin.design.proxy;

/**
 *
 * @author tianjin
 *
 * 2023年4月11日
 * TODO
 *
 * 代理模式: 结构型模式
 *
 * 代理模式是为了增强控制。
 * 在直接访问对象时带来的问题，比如说：要访问的对象在远程的机器上。在面向对象系统中，有些对象由于某些原因（比如对象创建开销很大，或者某些操作需要安全控制，或者需要进程外的访问），
 * 直接访问会给使用者或者系统结构带来很多麻烦，我们可以在访问此对象时加上一个对此对象的访问层。
 *
 * 代理对象，真实对象，公共功能接口
 *
 * 以“我要飞”这个功能接口为例，通过代理对其加以控制，飞之前需要“助力”，飞结束之后需要“滑行”
 */
public class Test {

	public static void main(String[] args) {

		ProxySubject proxy = new ProxySubject();
		proxy.request();
	}
}
